home *** CD-ROM | disk | FTP | other *** search
- PYRO - A Simulated Pyrotechnics Display
- ---------------------------------------
-
- (c) 1987 K.G. Shields
-
-
- Program PYRO utilises the power of an IBM AT compatible and the colour graphics
- capability of an EGA display to produce a realistic simulation of a
- Pyrotechnics (fireworks) display.
-
-
- Requirements
- ------------
- An AT compatible (preferably running at 8 Mhz)
- An EGA compatible display card
- A colour display
-
- PYRO has been tested on a variety of machines running at 8 and 10 Mhz.
- Although optimised to give the best effect on an 8 Mhz machine, it still gives
- quite acceptable results on the faster processors. (For a good display on very
- fast machines the program may be modified by inserting a suitable delay in the
- innermost loop of the move_points function.) When running at the correct
- speed, one complete Pyrotechnics show will take about four minutes to execute.
- Most PC and XT compatibles are not fast enough to give a realistic display,
- however future plans for PYRO include a simplified version that will run on a
- PC/XT and be capable of driving a CGA display.
-
-
- Method of Use
- -------------
- Like a real fireworks display, PYRO is really meant to be viewed in the dark.
- For the most realistic effect, first darken the room as much as possible and
- cover or turn off any LEDs or pilot lights on the computer and keyboard. If
- darkening the room is too difficult PYRO will still give a convincing display
- by normal room lighting, but I recommend viewing it in the dark at least once
- to experience the full impact.
-
- Put the PYRO disk in your A drive and make A: the default drive. To execute
- PYRO to produce one complete Pyrotechnics presentation, enter
-
- pyro
-
- at the DOS prompt. Alternatively, the program may be made to run continuously
- by entering
-
- pyro c
-
- instead. To terminate the show immediately at any time hit the escape key. For
- a more graceful exit press any other key and the program will stop after
- completing all currently active sequences.
-
-
- Technical Details
- -----------------
- The program is written in Turbo C and compiles using default options. To
- achieve the required speed, the EGA registers and memory are accessed directly.
- In general, PYRO works by generating points and allowing them to continue in
- motion under the effect of simulated gravity. The attributes of a point
- include position, velocity, size, colour, lifetime, and rate of fade at the end
- of its life. Most attributes are generated randomly for each point, but the
- various effects are achieved mainly by manipulating the limits within which
- each attribute may lie.
-
- There are five different effects currently programmed:
-
- Spurt Produces intermittent eruptions of coloured sparks which fill
- the sky then fall gently to earth
-
- Flare A continuous stream of sparks emitted at high speed which fade
- quickly before they begin to fall
-
- Burst A starburst of brightly coloured points complete with sound
- effects
-
- Rocket A skyrocket which leaves behind a diffuse trail. Most end in a
- starburst but for realism a percentage of 'fizzlers' simply fade
- away to nothing.
-
- Roman Candle A large fiery ball shoots skyward, leaving a short, quickly
- fading trail. The ball explodes in a large burst that sometimes
- seems to fill the entire sky.
-
-
- Files on the PYRO Disk
- ----------------------
- PYRO.C The complete source code of the program written in Turbo C
- PYRO.EXE The program in executable form
- PYRO.DOC This file, the documentation of PYRO
- PYROLAB.PCX 'Paintbrush' file to produce a colourful floppy disc label, if
- you have the means to print it.
-
-
- Future Plans
- ------------
- This initial version of PYRO was produced as an entry in the 'Your Computer'
- Microsoft Computer Program Art Exhibition and in this context it is complete.
- However when time permits I still intend to develop the concept further.
- Likely future enhancements include
-
- . Inclusion of more effects. (Catherine wheels are next - my wife insists!)
-
- . Ability to automatically sense processor speed and adjust delay loops to
- compensate if necessary.
-
- . A simplified version which will be able to use a CGA display and will run at
- sufficient speed on a PC or XT.
-
- . Addition of a suitable title screen.
-
- . Ability to read a script file so that you can customise your own display.
-
-
-
-
- Please direct any comments, enquiries or suggestions to
-
- Kelvin G. Shields,
- 21 Sirocco Street,
- Jamboree Heights,
- Queensland, 4074.
-
- (07) 376 8383 (A/H)
-
-
-
- Unless the written permission of the author is obtained beforehand, program
- PYRO may not be sold for any sum in excess of the normally accepted charges for
- copying and distributing public domain software, nor may it be used in any
- other manner for direct commercial gain, nor may the whole or any part of it be
- incorporated into any other item of computer software.
-
-